header
<cstdarg> (stdarg.h)
Variable arguments handling
This header defines macros to access the individual arguments of a list of unnamed arguments whose number and types are not known to the called function.
A function may accept a varying number of additional arguments without corresponding parameter declarations by including a comma and three dots (,...) after its regular named parameters:
return_type function_name ( parameter_declarations , ... );
To access these additional arguments the macros va_start, va_arg and va_end, declared in this header, can be used:
- First, va_start initializes the list of variable arguments as a va_list.
- Subsequent executions of va_arg yield the values of the additional arguments in the same order as passed to the function.
- Finally, va_end shall be executed before the function returns.
Types
- va_list
- Type to hold information about variable arguments (type
)
Macro functions
- va_start
- Initialize a variable argument list (macro
)
- va_arg
- Retrieve next argument (macro
)
- va_end
- End using variable argument list (macro
)
- va_copy
- Copy variable argument list (macro
)